package com.onlyMe.world.path
{
	import com.onlyMe.geom.Coord;
	
	public interface PathFinderMap
	{
		/* Returns false if:
			* dest is an invalid coord, or
			* both positions are not adjacent, or
			* they are adjacent but it is impossible to pass between them.
		 */
		function isBlocked(dest:Coord):Boolean;

		/* G function of A* algorithm -- The cost of walking from orig to dest, given that the way is not blocked. */
		function getCost(orig:Coord, dest:Coord):Number;

		/* H function of A* algorithm -- The estimated cost of walking from orig to the target destination. */
		function getEstimatedCost(orig:Coord, dest:Coord):Number;
	}
}

